Systemtest

Systemtest
Systemtest,
 
die Prüfung eines im Rahmen einer Systemanalyse geplanten und mittels Systementwicklung erstellten Systems. Im Rahmen des Systemtests wird überprüft, ob die Vorgaben und Ziele der Systemanalyse erfüllt wurden, ob das System den Aufgaben gewachsen ist und ob die Leistungsfähigkeit den gestellten Anforderungen entspricht. Ein derartiges System kann allgemein z. B. ein Software-Paket, aber auch eine Autowaschanlage oder eine Anlage zur Herstellung von Computer-Chips sein.
 
Im Folgenden wird ausschließlich der Software-Systemtest behandelt. Er besteht immer in der Prüfung der Software auf Fehlerfreiheit. Um Fehler zu finden, müssen die unterschiedlichsten Situationen, die im praktischen Einsatz eines Programms auftreten können, nachempfunden werden.
 
Ein sorgfältiger Systemtest schließt sich an die Tests der einzelnen Software-Komponenten an (die also für sich genommen alle schon die Einzelprüfungen überstanden haben) und beinhaltet mehrere Vorgehensweisen.
 
Zunächst wird man das Programm typische Aufgaben durchführen lassen, wobei man auch Vorgehensweisen und falsche Bedienungen eines typischen Anwenders einbezieht. Man verlässt bewusst die Gedankengänge und Vorgehensweise der Programmierer und versucht, auf diese Weise ganz unerwarteten oder zumindest bedienrelevanten Fehlern auf die Schliche zu kommen. Weiter untersucht man, ob das Software-System unsinnige Eingaben und Bedienungen verkraftet.
 
Verlaufen diese Tests erfolgreich, unterwirft man das System einem Belastungstest (engl. stress test). Wenn man es durch massive Eingaben und gleichzeitig laufende, aufwendige Prozesse aufs Äußerste ausreizt, spricht man von einem Crashtest oder Destruktionstest. Dabei können schon kleine Fehler einen Absturz verursachen und so auf sich aufmerksam machen.
 
Die Funktionsfähigkeit der Software wird anschließend auf unterschiedlichen Rechnermodellen (z. B. mit unterschiedlichen Prozessor- oder Busversionen) geprüft, die zudem verschieden ausgestattet sind (etwa unterschiedliche Grafikkarten oder Festplatten enthalten). Dies soll zeigen, ob es störende Einflüsse durch andere Programme gibt, die beispielsweise einen Bereich des Speichers beanspruchen, den das zu testende Programm selbst belegen möchte. Der reibungslose Programmablauf bei unterschiedlichen technischen Ausstattungen - die gleichzeitig unterschiedliche Treiber und installierte Hilfsprogramme bedeuten - ist ein starkes Indiz dafür, dass das Programm nicht von spezifischen Eigenheiten der Hardware abhängt und damit auf den meisten Computern einer bestimmten Klasse laufen sollte. Programme, die für unterschiedliche Betriebssysteme entworfen werden, beispielsweise für Linux und für Windows, müssen darüber hinaus auf allen Plattformen bestehen.
 
In weiteren Systemtests werden verschiedene Hardware-Probleme simuliert, die vom fehlenden Papier im Drucker bis hin zu Störungen an eingebauten Hardware-Komponenten des Computers, beispielsweise einer Festplatte, reichen. Sie dürfen nicht zu einem kompletten Absturz des Programms führen, sondern nur zu einer Fehlermeldung, nach der ein Anwender das Programm ordnungsgemäß beenden kann.
 
Viele Software-Firmen führen die anwendernahen Tests nicht nur in den eigenen Räumen durch, sondern verteilen Vorabversionen des Programms an interessierte Kunden, die nun die Aufgabe haben, das Programm unter realistischen Bedingungen zu überprüfen. Diese sog. Betatester melden alle gefundenen Fehler sowie die Umstände, unter denen sie eintraten, an die Firma weiter, die daraufhin versucht, den Fehler zu reproduzieren und zu beseitigen. Die Vorteile solcher Betatests liegen v. a. in der großen Vielfalt an Rechnerumgebungen und Aufgabenstellungen, die an das Programm herangetragen werden.
 
Bei allen Testverfahren gilt, dass ein Software-Tester die auftretenden Fehler und die Umstände, unter denen sie eingetreten sind, möglichst detailliert beschreibt. Dadurch erhalten die Programmierer Hinweise auf die Fehlerursache. Oft sind Systemtester selbst Programmierer bzw. waren sogar an der Entwicklung des Systems beteiligt und kennen daher nicht nur die Stärken, sondern auch die Schwächen des Systems. Dadurch können sie Hinweise auf mögliche Fehlerquellen und die Beseitigung eingetretener Fehler geben.
 
Die nach allen Systemtests noch unerkannten Fehler können erst gefunden werden, wenn das Programm beim Kunden im Einsatz ist. Sie werden in der Wartungsphase der Systementwicklung beseitigt, die daher oft zu neuen Versionen und wachsenden Versionsnummern führt. Treten bei den Kunden jedoch zu viele Programmfehler auf, darunter solche, die bei einem sorgfältigen Systemtest erkennbar gewesen wären, wird die Software oft als Ripeware oder Bananaware (dt. »Software, die beim Kunden ausreift«) bezeichnet.

Universal-Lexikon. 2012.

Игры ⚽ Поможем написать курсовую

Schlagen Sie auch in anderen Wörterbüchern nach:

  • Systemtest — Ein Softwaretest ist ein Test während der Softwareentwicklung, um die Funktionalität einer Software an den Anforderungen und ihre Qualität zu messen, und Softwarefehler zu ermitteln. Inhaltsverzeichnis 1 Definition 2 Ziele 3 Testplanung …   Deutsch Wikipedia

  • Systemtest — sisteminis tikrinimas statusas T sritis automatika atitikmenys: angl. system check vok. Systemprüfung, f; Systemtest, m rus. системная проверка, f pranc. vérification de système, f …   Automatikos terminų žodynas

  • Systemtest — im Phasenmodell der Systemanalyse (⇡ Phasenmodelle) die Phase, die der Überprüfung des ⇡ Softwaresystems auf Funktionsfähigkeit dient. Vgl. auch ⇡ Testen …   Lexikon der Economics

  • Softwaretest — Ein Softwaretest prüft und bewertet Software gegen die für ihren Einsatz definierten Anforderungen und misst ihre Qualität. Die gewonnenen Erkenntnisse werden zur Erkennung und Behebung von Softwarefehlern genutzt. Tests während der… …   Deutsch Wikipedia

  • Akzeptanztest (Softwaretechnik) — Ein Softwaretest ist ein Test während der Softwareentwicklung, um die Funktionalität einer Software an den Anforderungen und ihre Qualität zu messen, und Softwarefehler zu ermitteln. Inhaltsverzeichnis 1 Definition 2 Ziele 3 Testplanung …   Deutsch Wikipedia

  • Programmtest — Ein Softwaretest ist ein Test während der Softwareentwicklung, um die Funktionalität einer Software an den Anforderungen und ihre Qualität zu messen, und Softwarefehler zu ermitteln. Inhaltsverzeichnis 1 Definition 2 Ziele 3 Testplanung …   Deutsch Wikipedia

  • Software-Test — Ein Softwaretest ist ein Test während der Softwareentwicklung, um die Funktionalität einer Software an den Anforderungen und ihre Qualität zu messen, und Softwarefehler zu ermitteln. Inhaltsverzeichnis 1 Definition 2 Ziele 3 Testplanung …   Deutsch Wikipedia

  • System-Test — Ein Softwaretest ist ein Test während der Softwareentwicklung, um die Funktionalität einer Software an den Anforderungen und ihre Qualität zu messen, und Softwarefehler zu ermitteln. Inhaltsverzeichnis 1 Definition 2 Ziele 3 Testplanung …   Deutsch Wikipedia

  • Test (Informatik) — Ein Softwaretest ist ein Test während der Softwareentwicklung, um die Funktionalität einer Software an den Anforderungen und ihre Qualität zu messen, und Softwarefehler zu ermitteln. Inhaltsverzeichnis 1 Definition 2 Ziele 3 Testplanung …   Deutsch Wikipedia

  • Load Testing — Unter einem Lasttest (Lehnübersetzung von Performancetest) versteht man einen Softwaretest, mit dem eine zu erwartende, auch extreme Last auf dem laufenden System erzeugt und das Verhalten desselbigen beobachtet und untersucht wird. Dazu kann… …   Deutsch Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”